package mysql8学习.初级.第12章_MySQL数据类型精讲;

/**
 * 二进制字符串类型      可以存汉字，只不过可能占多个字节
 * MySQL 中的二进制字符串类型主要存储一些二进制数据，
 *      比如可以存储图片、音频和视频等二进制数据。
 * MySQL中支持的二进制字符串类型主要包括
 * BINARY、VARBINARY      TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB类型。
 *
 * BINARY与VARBINARY类型
 * | 二进制字符串类型   | 特点      | 值的长度               | 占用空间  |
 * | ---------------- | -------- | -------------------- | --------- |
 * | BINARY(M)        | 固定长度  | M （0 <= M <= 255）   | M个字节   |   用LENGTH表示  大小=M
 * | VARBINARY(M)     | 可变长度  | M （0 <= M <= 65535）  | M+1个字节 |   用LENGTH表示  大小=实际的
 * BINARY和VARBINARY类似于CHAR和VARCHAR，只是它们存储的是二进制字符串。
 * BINARY (M)为固定长度的二进制字符串，M表示最多能存储的字节数，取值范围是0~255个字符。
 *      如果未指定(M)，表示只能存储`1个字节`。例如BINARY (8)，表示最多能存储8个字节，
 *      如果字段值不足(M)个字节，将在右边填充'\0'以补齐指定长度。
 * VARBINARY (M) 为可变长度的二进制字符串，M表示最多能存储的字节数，
 *      总字节数不能超过行的字节长度限制65535，另外还要考虑额外字节开销，
 *      VARBINARY 类型的数据除了存储数据本身外，还需要1或2个字节来存储数据的字节数。
 *      VARBINARY 类型`必须指定(M)`，否则报错。
 *
 */
public class H1_二进制类型BINARY与VARBINARY {
}
